package com.isoftstone.disk.repository;

import com.isoftstone.disk.entity.FileInfoTreeEntity;
import com.isoftstone.disk.entity.RenameFile;
import com.isoftstone.platform.model.entity.FileEntity;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository("fileDao")
public interface FileDao {

    void saveFileInfo(@Param("fileInfo")FileEntity fileInfo);

    void recycleFile(@Param("file_id")int fileId);

    List<FileEntity> queryFileInfoList(@Param("parent_id")int pid);

    List<FileEntity> getDeleteFileslist();

    void restoreFile(@Param("file_id")int fileId);

    void delete(@Param("file_name")String fileId);

    void saveFolderInfo(@Param("folderInfo")FileEntity fileInfo);

    List<FileEntity> getSharedFileInfoList();

    void cancelSharingFile(@Param("file_id")int fileId);

    void sharingFile(@Param("file_id")int fileId);

    List<FileInfoTreeEntity> queryFileInfoZtreeList();

    int getPardirId(@Param("id")Integer valueOf);

    void moveFile(@Param("id")int id, @Param("Pid")int i);

    void renameFileName(@Param("renameFile") RenameFile renameFile);

    FileEntity queryFileInfo(@Param("id")String id);

    void copyFile(@Param("fileInfo")FileEntity fileEntity);
}

